using System;

internal class Class_b
{
	private int m_a = 971;

	private int m_b = 11113;

	private int m_c = 104322;

	private int d = 4181;

	private bool e;

	private void a()
	{
		Random random = new Random(Guid.NewGuid().GetHashCode());
		d = random.Next();
		e = true;
	}

	internal byte b()
	{
		return (byte)c();
	}

	internal ushort c()
	{
		if (e)
		{
			d += 7;
			this.m_b += 1907;
			this.m_c += 73939;
			if (d >= 9973)
			{
				d -= 9871;
			}
			if (this.m_b >= 99991)
			{
				this.m_b -= 89989;
			}
			if (this.m_c >= 224729)
			{
				this.m_c -= 96233;
			}
			d = d * this.m_a + this.m_b + this.m_c;
		}
		else
		{
			a();
		}
		return (ushort)((uint)(d >> 16) ^ ((uint)d & 0xFFFFu));
	}

	internal void a(byte[] A_0, int A_1)
	{
		for (int i = 0; i < A_1; i++)
		{
			A_0[i] = b();
		}
	}
}
